An expedient technique for obtaining high bandwidth use of a digital telephone network is to first split the data into multiple time division multiplexed (TDM) timeslots, route respectively different timeslots of data over reduced bandwidth data circuits through the network, and then to merge or interleave the time slots from each data circuit at the receiving end of the link. Although successive time slot bytes of each circuit are synchronized to a common clock signal (e.g. 8 KHz for ISDN (integrated services digital network) frames), different circuits can be expected to be routed over respectively different transmission paths through the network.
Because the transmission delay for any given path is not necessarily the same as that of any other path through the network, there is a high likelihood that the respective data bytes (time slots) of different circuits will not arrive at the destination end of the network in the same time-aligned fashion as they were injected at the source end of the network. To compensate for this misalignment problem, a technique commonly referred to as `bonding` is carried out by a digital signal processor at the receive end of the link.
More particularly, bonding is the process of linking or joining multiple data circuits that have been routed over respective communication paths that do not necessarily have the same transmission delay, such that the data from the respective circuits properly interleave at the destination end of the network. Namely, bonding is operative to preserve the same order and time slot synchronization, as originally multiplexed at the upstream or source end of the network. As pointed out above, the bonding process typically is performed by a digital signal processor at the destination end of the network, the processor being coupled to receive respectively different delayed channels of data through synchronous communication controllers (SCCs) of a bonding receiver to which the output of the network is coupled.
Referring to FIG. 1, the overall configuration of a conventional time division multiplexed (TDM) digital communication system between respective customer sites (transmitter site 1 and receiver 2) is diagrammatically illustrated as comprising a bonding transmitter 3, which connects transmitter site 1 to an upstream side 22 of a network 20, and a bonding receiver 4, which connects receiver site 2 to a downstream side 24 of network 20. As a non-limiting example, bonding receiver 4 may comprise an ISU-128 (TM Adtran Corp., Huntsville, Ala.) ISDN terminal adaptor, diagrammatically illustrated in FIG. 2 as comprising respective serial communication controllers (SCCs) 11 and 13, which are respectively coupled through a network link 21 to a network interface 6, and to a digital communications link 23 which serves a user's computer equipment 25 at the terminal side of the interface. SCCs 11 and 13 and are controlled by a resident communications processor 17, such as that contained in a Motorola 68302 microcontroller.
The network proper is shown at 20 and, as described above, is operative to route respectively different circuits of data, supplied to an upstream side 22, over reduced bandwidth time division multiplexed (TDM) data paths, to a downstream or receive path side 24. Receive path side 24 is coupled via network interface 6 to network link 21. At each of the upstream side 22 and the downstream side 24 of the network 20, successive time slots of each circuit are synchronized to a common clock signal (e.g. 8 KHz for 56 KHz or 64 KHz for ISDN circuits).
As diagrammatically illustrated in the timing diagram of FIG. 3, different circuits B1, B2 of interleaved time slots (successive TDM bytes) b11, b12, b13, . . . , b21, b22, b23 can be expected to be routed over respectively different transmission paths through network 20. Because the transmission delay for any given path is not necessarily the same as that of any other path through the network, there is a high likelihood that the time slots b11, b12, b13, . . . of data circuit B1 will not arrive at the receive side 24 of the network 20 in their original properly time-aligned, interleaved fashion with time slots b21, b22, b23, . . . of data circuit B2.
This expected temporal offset or network path delay is diagrammatically shown in FIG. 4, which, for purposes of providing a non-limiting example, illustrates the case where the routing path through network 20 has caused the time slots b2i of data circuit B2 to be delayed by three bytes relative to the time slots b1i of data circuit B1. In the illustrated example, such a three byte network path delay causes time slot b21 of circuit B2 to be clocked at the time of time slot b14 of data circuit B1. It can be seen that if the circuits B1 and B2 were simply recombined, data byte b21, rather than being interleaved between data bytes b11 and b12 of circuit B1, in accordance with its original TDM format, would be interleaved between data bytes b14 and b15 of circuit B1, yielding a corrupted data byte sequence. To avoid this problem and properly recover the originally interleaved data byte sequence, it is necessary to compensate for the transmission path delay between the time slots of circuit B1 and those of circuit B2.
As noted above, such compensation, referred to as bonding, is customarily performed in communications processor 17, which measures the relative delay between the B1 and B2 circuits, and then inserts the necessary amount of delay in that path (here circuit B1) whose transmission channel delay is faster than the slower channel (here B2). A principal shortcoming of this conventional approach is the fact that a significant portion of the available processing cycles of communications processor 17 must be dedicated to adjust that delay through associated memory. Moreover, because the delay path involves the manipulation of the data through the processor 17, a substantial transport delay penalty is incurred. In addition, such preliminary processing (bonding compensation) of the data frames output by the network means that the SCC 11 of the bonding receiver is precluded from performing some other function such as high level data link control (HDLC) reception.